package com.atguigu.gulimall.gateway.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.reactive.CorsConfigurationSource;
import org.springframework.web.cors.reactive.CorsWebFilter;
import org.springframework.web.cors.reactive.UrlBasedCorsConfigurationSource;

/**
 * @Author: 风鹤
 * @Date: 2020/10/23 18:57
 */
@Configuration
public class GulimallCorsConfiguration {
    @Bean
  public   CorsWebFilter corsWebFilter(){
      UrlBasedCorsConfigurationSource source=new UrlBasedCorsConfigurationSource();
      CorsConfiguration corsConfiguration=new CorsConfiguration();

//      配置跨域
        corsConfiguration.addAllowedHeader("*"); // 允许那些请求头进行跨域
        corsConfiguration.addAllowedMethod("*"); // 允许那些请求方式进行跨域
        corsConfiguration.addAllowedOrigin("*");// 允许那些请求来源进行跨域
        corsConfiguration.setAllowCredentials(true); // 允许那些允许携带cokien进行跨域
//        任意路径都需要
      source.registerCorsConfiguration("/**",corsConfiguration);
      return new CorsWebFilter(source);

  }
}
